package org.example.new_hbps_backend_reconstruction.service;

import com.baomidou.mybatisplus.extension.service.IService;
import org.example.new_hbps_backend_reconstruction.entity.PatientAvatarEntity;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

/**
 * @author Gao Zihan
 * @date 2025年10月16日
 * @description 患者头像服务接口
 */
public interface PatientAvatarService extends IService<PatientAvatarEntity> {

    /**
     * 上传患者头像
     * @param patientUid 患者ID
     * @param file 头像文件
     * @return 头像信息
     */
    PatientAvatarEntity uploadAvatar(Long patientUid, MultipartFile file);

    /**
     * 获取患者当前头像
     * @param patientUid 患者ID
     * @return 当前头像信息
     */
    PatientAvatarEntity getCurrentAvatar(Long patientUid);

    /**
     * 获取患者头像历史
     * @param patientUid 患者ID
     * @return 头像历史列表
     */
    List<PatientAvatarEntity> getAvatarHistory(Long patientUid);

    /**
     * 删除头像
     * @param avatarId 头像ID
     * @return 删除结果
     */
    boolean deleteAvatar(Long avatarId);

    /**
     * 设置默认头像
     * @param patientUid 患者ID
     * @return 设置结果
     */
    boolean setDefaultAvatar(Long patientUid);
}